﻿<!DOCTYPE html> <HTML lang=en> <HEAD> <STYLE>
body { background-color: #EEFFEE;  font-size: 1.0rem; font-family: Arial; max-width: 60rem;
      color: #000000; margin: 0px;
      padding-left:  0px; padding-right:  0px; padding-top:  0px; padding-bottom:  0px; }
H1 {  padding-left: 10px; padding-right:  0px; padding-top: 10px; padding-bottom: 10px; font-size: 1.4rem; }
H2 {  padding-left: 10px; padding-right:  0px; padding-top: 10px; padding-bottom:  0px; font-size: 1.2rem; }
blockquote {
  tab-size: 3rem;
  color: #88FF88; background: #000000;
  font-size: 0.95rem; font-family: monospace;
  padding-left: 5px; padding-right: 5px;
  padding-top: 5px; padding-bottom: 5px;
}
P {   padding-left: 20px; padding-right:  0px; padding-top:  0px; padding-bottom:  0px; }
IMG { padding-left:  0px; padding-right:  0px; padding-top:  2px; padding-bottom:  0px;
      max-width: 100%; }
A { display: inline; border-radius: 4px;
    font-size: 1.0rem; font-family: Arial; color: #000044; text-decoration: none;
    padding-left: 4px; padding-right: 4px; padding-top: 4px; padding-bottom: 4px; }
A:hover { color: #FFFF00; background: #000044; }
A:active { color: #FFFFFF; background: #444444; }
</STYLE> </HEAD> <BODY>
<IMG SRC="Images/Title.png" ALT="Images/Title.png">
<P>
</P><H1> David Piuva's software renderer</H1><P>
</P><P>
When you just want to code in your own pace without worrying about API deprecation.

</P><P>
It should not grow obsolete and bloated like OpenGL from not breaking anything, but it should not require a full rewrite of engines like Direct3D.
This library is entirely statically linked, so that your source code can be saved together with a specific version of the library, a slimmed down modification of the library, or even a mix of different versions.
By being compiled from source code automatically when making changes to the library, it is easy to mix different versions of the library if something eventually has to be removed to reduce bloat.

</P><P>
Anything with "impl" in the name is expected to change at any time, so don't do hacks with the internals unless you copy the code into your own project or stay with the same version of the library.
Anything that requires defining DFPSR_INTERNAL_ACCESS before a header is also considered internal.

</P><P>
</P><IMG SRC="Images/Border.png"><P>

</P><P>
<IMG SRC="Images/SmallDot.png">
<A href="Starting.html">Getting started</A>
</P><P>
<IMG SRC="Images/SmallDot.png">
<A href="Troubleshooting.html">Troubleshooting</A>
</P><P>
</P><IMG SRC="Images/Border.png"><P>
</P><H2> APIs</H2><P>
</P><P>
<IMG SRC="Images/SmallDot.png">
<A href="Strings.html">String API</A>
</P><P>
<IMG SRC="Images/SmallDot.png">
<A href="Buffers.html">Buffer API</A>
</P><P>
<IMG SRC="Images/SmallDot.png">
<A href="Files.html">File API</A>
</P><P>
<IMG SRC="Images/SmallDot.png">
<A href="Images.html">Image API</A>
</P><P>
</P><IMG SRC="Images/Border.png"><P>
</P><H2> Techniques</H2><P>
</P><P>
<IMG SRC="Images/SmallDot.png">
<A href="ImageProcessing.html">Image processing</A>
</P><P>
</P><IMG SRC="Images/Border.png"><P>
</P><H2> Modifying the library</H2><P>
</P><P>
<IMG SRC="Images/SmallDot.png">
<A href="StyleGuide.html">Style guide</A>
</P><P>
</P><IMG SRC="Images/Border.png"><P>
</P><H2> Technical details</H2><P>
</P><P>
<IMG SRC="Images/SmallDot.png">
<A href="License.html">License</A>
</P><P>
<IMG SRC="Images/SmallDot.png">
<A href="Security.html">Security</A></P><IMG SRC="Images/Border.png"><P>
</P>
</BODY> </HTML>
